Median filtering is a non-linear filtering technique that is well known for the ability to remove impulsive-type (white) noise, while preserving sharp edges. The standard median filter is described in the literature as follows: EQU y(i)=median
where x(i) and its associated values are the input sample sequence, and y(i) is the output value from the standard median filter applied (spatially) to a window of size 2N+1. The filter is implemented, e.g., with a tapped delay line, by ranking the pixel values (obtained from the taps) that lie within the window in order of magnitude and then selecting the middle (median) value.
The recursive median filter is a modification of the standard median filter that improves the ability of the filter to remove noise while using a much smaller number of taps. In this case, the window centered on position i contains previously calculated (median) values, y(i-N) to y(i-1) in addition to the input values x(i) to x(i+N). For a window width of 2N+1, the recursive form of the filter is EQU y(i)=median
Traditionally, median filters have not been used for spatial grain-suppression because of the high spatial correlation of grain (i.e., such grain noise is not impulsive), but have found wide application in the suppression of impulsive electrical noise. Median filtering is also used in television applications, for example in the generation of an image sequence with progressive scanning from an interlaced original.
In an electronic imaging system which is concerned with a time-varying sequence of images, noise suppression can be implemented in the spatial domain, the temporal domain, or in a combination of the two. Any algorithm which operates in the temporal domain must take account of image motion in order to avoid the introduction of unwanted motion-blur. In one well-known method, that result is achieved by the use of finite (FIR) or infinite (IIR) response filters in the time direction which have coefficients or time-constants dependent on the value of the interframe difference at each pixel position. Filtering algorithms in this class are generally referred to as "motion-adaptive".
In the temporal domain, grain-noise is impulsive (i.e., not correlated), and hence the median filter can be used in the time direction to suppress noise while preserving sharp interframe changes (i.e., rapid motion). This is done without the need for explicit motion detection. The use of the standard median filter for this application is described in the literature (see, e.g., "Digital Image Sequence Processing Using the Median Filter," B. Alp et al, Sahko 63 (1990)6, 7-8, pp. 26-27, 42-48).
The operation of a median filter may be made adaptive with respect to, for example, the noise density, as disclosed in the U.S. Pat. No. 4,682,230, which was issued Jul. 21, 1987 in the name of Perlman et al. If the noise density is high, the sample value need deviate only a small distance from the median value for it to be replaced by the median. If the noise density is low, a sample value must deviate by a greater distance for it to be replaced by the median value. Absent such deviation, the sample value is not replaced and is passed through to the output of the filter. In each case, therefore, the largest deviations (impulsive noise) are filtered, and the smallest deviations (presumably, signal) are unchanged.
The standard, recursive, and adaptive median filters, as heretofore described, have two limitations, particularly with regard to temporal image processing. First, each removes impulsive portions of the signal; the standard and recursive median filters do this independently of the magnitude of the impulse, i.e., the middle value is always selected. The adaptive median filter, as in the Perlman et al reference, removes impulsive portions as a function of noise density and the dynamic range of the samples within the filter window. None of the filters, however, can distinguish between white (impulsive) noise and picture signals of small spatial extent that are sufficiently fast-moving to be temporally impulsive. Secondly, the median filter, even in its recursive form, requires significantly more taps to achieve the same level of noise suppression than the IIR filters already discussed. Since the filter is to be applied in the time direction, the hardware implementation requires a frame store for every filter tap, and this has significant cost implications.